You are here: Appendix A > Macros and Subroutines
A macro may be used in any expression field, but the macro may only contain expressions which return a value (e.g., Entries(LOC1), U(5,1)). When a macro is used in a logic field, the macro may include any logic element that is valid in that logic field. A subroutine may also be used in an expression field provided that the Return statement is used to return a value to the expression field. When a subroutine is used in a logic field, the subroutine may include any logic element that is valid in that logic field.